// 解析歌词
export function analyzeLyrics(lrc: string) {
  const oLRC: any = {
    ms: [] //歌词数组{t:时间,c:歌词}
  }
  if (lrc.length == 0) return
  const lrcs = lrc.split('\n') //用回车拆分成数组 (每一句歌词都用换行隔开了)
  for (const i in lrcs) {
    //遍历歌词数组
    lrcs[i] = lrcs[i].replace(/(^\s*)|(\s*$)/g, '') //去除前后空格
    const arr = lrcs[i].match(/\[(\d+:.+?)\]/g) //提取时间字段，可能有多个
    let start = 0
    for (const k in arr) {
      start += arr[Number(k)].length //计算歌词位置 长度叠加
    }
    const content = lrcs[i].substring(start) //获取歌词内容 相当于减去时间字符串的长度剩下的就是内容
    for (const k in arr) {
      const t = arr[Number(k)].substring(1, arr[Number(k)].length - 1) //取[]间的内容
      const s = t.split(':') //分离:前后文字 便于计算成毫秒数
      oLRC.ms.push({
        //对象{t:时间,c:歌词}加入ms数组
        // t: t,
        t: (parseFloat(s[0]) * 60 + parseFloat(s[1])).toFixed(3),
        c: content === '' ? '..............' : content
      })
    }
  }
  oLRC.ms.sort(function (a: any, b: any) {
    //按时间顺序排序
    return a.t - b.t
  })
  // for (let i in oLRC) {
  //   //查看解析结果
  //   console.log(i, ":", oLRC[i]);
  // }
  // this.lrcObject = oLRC.ms
  return oLRC.ms
}
